home *** CD-ROM | disk | FTP | other *** search
- /*************************************************************************
- * Test_Inf - (c) 1996 Philippe Castella *
- * Programme de test de la librarie InitFile *
- *************************************************************************/
-
- /*************************************************************************
- * Fichiers à inclure *
- *************************************************************************/
- #include <stdio.h>
- #include <InitFile.h>
-
- /*-----------------------------------------------------------------------*
- * Ce programme n'est absolument pas optimisé (ca se voit d'ailleur !) *
- * Il permet de tester mes fonctions de gestion de fichiers paramètres. *
- *-----------------------------------------------------------------------*/
- void main (void)
- {
- InitFile *fic_ini;
- InfSection *sect;
- InfVar *var;
- short b;
- long entier;
- char chaine[128], buf[8];
-
- /* Création d'un fichier .inf */
- printf ("> Création / ouverture du fichier .inf\n> Ca dépend s'il existe déjà ou non !...\n");
- fic_ini = InfCreate ("test_inf.inf");
- printf ("> Nom fichier : <%s>\n", fic_ini->FileName);
-
- printf ("Afficher contenu du fichier Inf (rien s'il n'existe pas)\n");
- sect = fic_ini->FirstSection;
- while (sect != (InfSection *)0)
- {
- printf ("Section = %s\n", sect->SectionName);
- var = sect->FirstVar;
- while (var != (InfVar *)0)
- {
- printf (" Var = %s, Val = %s\n", var->VarName, var->VarVal);
- var = var->NextVar;
- }
- sect = sect->NextSection;
- }
- getchar();
-
- /* Lecture du contenu du fichier */
- puts ("> Si le fichier existe déjà et que les variables existent aussi");
- puts ("> les fonctions de lectures retourneront les valeurs inscrites");
- puts ("> dans le fichier .inf");
- puts ("> Sinon, elles retourneront les valeurs par défaut !");
-
- /* Lire variable Booléenne */
- puts ("> Lire variable booléenne");
- InfReadBool (fic_ini, "Section Générale", "Variable Booléenne", FALSE, &b);
- printf ("Booléen = <%d>\n", b);
-
- /* Lire variable Entière */
- puts ("> Lire variable entière");
- InfReadInteger(fic_ini, "Section Générale", "Variable Entière", 2000L, &entier);
- ltoa(entier, buf, 10);
- printf ("Entier = <%s>\n", buf);
-
- /* Lire variable Chaine */
- puts ("> Lire variable chaine de caractères");
- InfReadString(fic_ini, "Message", "Un Message", "Coucou !", chaine);
- printf ("Chaine = <%s>\n", chaine);
- getchar ();
-
- /* Ecriture des variables */
- puts ("> Ecriture du contenu des variables = ");
- puts ("> 1 - Création si elles n'existent pas");
- puts ("> 2 - Mise à jour si elles existent");
-
- /* Une variable booléenne */
- printf ("> Ajouter variable booléenne...\n");
- InfWriteBool (&fic_ini, "Section Générale", "Variable Booléenne", TRUE);
- InfWriteBool (&fic_ini, "Section Générale", "Variable Booléenne 2", TRUE);
- InfWriteBool (&fic_ini, "Section Spéciale", "Variable Booléenne 3", TRUE);
-
- /* Une variable entière */
- printf ("> Ajouter variable entière...\n");
- InfWriteInteger (&fic_ini, "Section Générale", "Variable Entière", 1996);
-
- /* Une variable chaine de caractères */
- printf ("> Ajouter variable chaine de caractères...\n");
- InfWriteString (&fic_ini, "Message", "Un Message", "Joyeux Noel et Bonne Année 1997");
- getchar();
-
- printf ("Afficher contenu du fichier Inf\n");
- sect = fic_ini->FirstSection;
- while (sect != (InfSection *)0)
- {
- printf ("Section = %s\n", sect->SectionName);
- var = sect->FirstVar;
- while (var != (InfVar *)0)
- {
- printf (" Var = %s, Val = %s\n", var->VarName, var->VarVal);
- var = var->NextVar;
- }
- sect = sect->NextSection;
- }
- getchar();
-
- /* Test des fonctions de suppression */
- puts ("Suppression d'une variable et d'une section...");
- InfDeleteVar (&fic_ini, "Section Générale", "Variable Booléenne 2");
- InfDeleteSection (&fic_ini, "Section Spéciale");
- getchar();
-
- printf ("Afficher contenu du fichier Inf\n");
- sect = fic_ini->FirstSection;
- while (sect != (InfSection *)0)
- {
- printf ("Section = %s\n", sect->SectionName);
- var = sect->FirstVar;
- while (var != (InfVar *)0)
- {
- printf (" Var = %s, Val = %s\n", var->VarName, var->VarVal);
- var = var->NextVar;
- }
- sect = sect->NextSection;
- }
- getchar();
-
- /* Lire variable Booléenne */
- puts ("> Relire variable booléenne");
- InfReadBool (fic_ini, "Section Générale", "Variable Booléenne", FALSE, &b);
- printf ("Booléen = <%d>\n", b);
-
- /* Lire variable Entière */
- puts ("> Relire variable entière");
- InfReadInteger(fic_ini, "Section Générale", "Variable Entière", 2000L, &entier);
- ltoa(entier, buf, 10);
- printf ("Entier = <%s>\n", buf);
-
- /* Lire variable Chaine */
- puts ("> Relire variable chaine de caractères");
- InfReadString(fic_ini, "Message", "Un Message", "Coucou !", chaine);
- printf ("Chaine = <%s>\n", chaine);
- getchar ();
-
- /* Ecrire fichier + libération mémoire */
- printf ("> Mise à jour du fichier %s\n", fic_ini->FileName);
- InfFree (fic_ini);
-
- /* Lire variable Booléenne */
- puts ("\n> Relire variable booléenne après fermeture");
- InfReadBool (fic_ini, "Section Générale", "Variable Booléenne", FALSE, &b);
- printf ("Booléen = <%d> = valeur par défaut\n", b);
-
- /* Lire variable Entière */
- puts ("> Relire variable entière après fermeture");
- InfReadInteger(fic_ini, "Section Générale", "Variable Entière", 2000L, &entier);
- ltoa(entier, buf, 10);
- printf ("Entier = <%s> = valeur par défaut\n", buf);
-
- /* Lire variable Chaine */
- puts ("> Relire variable chaine de caractères après fermeture");
- InfReadString(fic_ini, "Message", "Un Message", "Coucou !", chaine);
- printf ("Chaine = <%s> = valeur par défaut\n", chaine);
- getchar ();
-
- printf ("> Appuyez sur une touche...");
- getchar();
-
- exit(0);
- }
-